Transparent display field of view region determination

ABSTRACT

A method and system for determining a field of view region on a transparent display is provided. The method includes receiving from a user facing device, a user image. User image key features of the user image are identified and user image attributes of said image key features are analyzed. An object image of objects is received and a first object is identified. Object key features of the first object are identified and object attributes of object key features are analyzed. A specified position on a transparent display for displaying a first image associated with the first object is determined. The first image is displayed at the specified position on the transparent display.

FIELD

The present invention relates generally to a method for determining afield of view region, and in particular to a method and associatedsystem for determining a line of sight between a user and an objectrelative to a transparent display apparatus.

BACKGROUND

Determining image placement location typically includes an inaccurateprocess with little flexibility. Managing placement of various imagesmay include a complicated process that may be time consuming and requirea large amount of resources. Accordingly, there exists a need in the artto overcome at least some of the deficiencies and limitations describedherein above.

SUMMARY

A first aspect of the invention provides a method including: receiving,by a computer processor of a computing apparatus from a user facingdevice, a user image; identifying, by the computer processor, user imagekey features of said user image; determining, by the computer processorbased on the user image key features, user image attributes of the imagekey features; first analyzing, by the computer processor, the user imageattributes; receiving, by the computer processor from an object facingdevice, an object image of objects; identifying, by the computerprocessor, a first object of the objects; identifying, by the computerprocessor, object key features of the first object; determining, by thecomputer processor based on the object key features, object attributesof the object key features; second analyzing, by the computer processor,the object attributes; determining, by the computer processor based onresults of the first analyzing and the second analyzing, a specifiedposition on a transparent display for displaying a first imageassociated with the first object; and displaying, by the computerprocessor at the specified position on the transparent display, thefirst image.

A second aspect of the invention provides a computer program product forfield of view region determination on a transparent display, thecomputer program product including: one or more computer-readable,tangible storage devices; program instructions, stored on at least oneof the one or more storage devices, to initiate receiving, from a userfacing device, a user image; program instructions, stored on at leastone of the one or more storage devices, to identify user image keyfeatures of the user image; program instructions, stored on at least oneof the one or more storage devices, to determine based on the user imagekey features, user image attributes of the user image key features;program instructions, stored on at least one of the one or more storagedevices, to first analyze, the user image attributes; programinstructions, stored on at least one of the one or more storage devices,to receive from an object facing device, an object image of objects;program instructions, stored on at least one of the one or more storagedevices, to identify a first object of the objects; programinstructions, stored on at least one of the one or more storage devices,to identify object key features of the first object; programinstructions, stored on at least one of the one or more storage devices,to determine, based on the object key features, object attributes of theobject key features; program instructions, stored on at least one of theone or more storage devices, to second analyze the object attributes;program instructions, stored on at least one of the one or more storagedevices, to determine, based on results of the first analyses and thesecond analyses, a specified position on a transparent display fordisplaying a first image associated with the first object; and programinstructions, stored on at least one of the one or more storage devices,to display, at the specified position on the transparent display, thefirst image.

A third aspect of the invention provides a computing apparatus includinga computer processor coupled to a computer-readable memory unit, thememory unit comprising instructions that when executed by the computerprocessor implements a method comprising: receiving, by the computerprocessor from a user facing device, a user image; identifying, by thecomputer processor, user image key features of the user image;determining, by the computer processor based on the user image keyfeatures, user image attributes of the image key features; firstanalyzing, by the computer processor, the user image attributes;receiving, by the computer processor from an object facing device, anobject image of objects; identifying, by the computer processor, a firstobject of the objects; identifying, by the computer processor, objectkey features of the first object; determining, by the computer processorbased on the object key features, object attributes of the object keyfeatures; second analyzing, by the computer processor, the objectattributes; determining, by the computer processor based on results ofthe first analyzing and the second analyzing, a specified position on atransparent display for displaying a first image associated with thefirst object; and displaying, by the computer processor at the specifiedposition on the transparent display, the first image.

The present invention advantageously provides a simple method andassociated system capable of determining image placement.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A illustrates a system for determining a line of sight between auser and an object relative to a transparent display apparatus, inaccordance with embodiments of the present invention.

FIG. 1B illustrates an alternative view of the system the system of FIG.1A, in accordance with embodiments of the present invention.

FIG. 2A illustrates a first object facing internal logic view of acomputing apparatus for determining a line of sight between a user andan object for image placement on a transparent display apparatus, inaccordance with embodiments of the present invention.

FIG. 2B illustrates a second object facing internal logic view of acomputing apparatus for determining a line of sight between a user andan object for image placement on a transparent display apparatus, inaccordance with embodiments of the present invention.

FIG. 3A illustrates a system for displaying information associated withan object on a transparent display apparatus, in accordance withembodiments of the present invention.

FIG. 3B illustrates a system for displaying multiple informationassociated with an objects on a transparent display apparatus, inaccordance with embodiments of the present invention

FIGS. 4A-4C illustrate various internal logic views of the computingapparatus of FIGS. 1A and 1B, in accordance with embodiments of thepresent invention.

FIG. 5 illustrates an algorithm detailing a process flow enabled by thesystem of FIGS. 1A and 1B, in accordance with embodiments of the presentinvention.

FIG. 6 illustrates a computer apparatus used by the system of FIG. 1 fordetermining a line of sight between a user and an object relative to atransparent display apparatus, in accordance with embodiments of thepresent invention.

DETAILED DESCRIPTION

FIGS. 1A and 1B illustrate a system 100 for determining a line of sight127 a or 127 b between a user 102 and an object 108 relative to atransparent display apparatus 104 including transparent display 104 aand 104 b, in accordance with embodiments of the present invention. Theabove and other features of the present invention will become moredistinct by a detailed description of embodiments shown in combinationwith attached drawings. Identical reference numbers represent the sameor similar parts in the attached drawings of the invention.

As will be appreciated by one skilled in the art, aspects of the presentinvention can be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention can take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that can allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present invention can take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) can beutilized. A computer readable storage medium can be, for example, butnot limited to, an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system, apparatus, or device, or any suitablecombination of the foregoing. More specific examples (a non-exhaustivelist) of the computer readable storage medium can include the following:an electrical connection having one or more wires, a portable computerdiskette, a hard disk, a random access memory (RAM), a read-only memory(ROM), an erasable programmable read-only memory (EPROM or Flashmemory), an optical fiber, a portable compact disc read-only memory(CD-ROM), an optical storage device, a magnetic storage device, or anysuitable combination of the foregoing. In the context of this document,a computer readable storage medium can be any tangible medium that cancontain, or store a program for use by or in connection with aninstruction execution system, apparatus, or device.

Computer program code for carrying out operations for aspects of thepresent invention can be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language, an assemblyprogramming language, functional programming languages or similarprogramming languages. The program code can execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer.

Aspects of the present invention are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions canbe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks. Additionally,aspects of the functions/acts may be “hard coded” to perform a step withlimited external input.

These computer program instructions can also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions can also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams can represent a module, segment, or portionof code, which may include one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock can occur out of the order noted in the figures. For example, twoblocks shown in succession can, in fact, be executed substantiallyconcurrently, or the blocks can sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “includes”and/or “including,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed.

The description of the present invention has been presented for purposesof illustration and description, but is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the invention. Theembodiment was chosen and described in order to best explain theprinciples of the invention and the practical application, and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated.

System 100 performs a process for determining an area where images (forobjects) should be placed such that they account for a user's (for auser 102) line of sight 127 a through a transparent display apparatus104 (e.g., a window, a heads up display (HUD), etc). Line of sight isdefined herein as including all equivalent information to a line ofsight and/or information capable of deriving a line of sight. Forexample, a line of sight may be calculated to determine image placement.Alternatively, a line of sight may include a set of processedmeasurements for producing a location of image placement.

System 100 includes user facing devices (or cameras) 112 a and 112 b andobject facing devices (or cameras) 110 a and 110 b attached to displayapparatus 104 and connected to a computing system for processing. Userfacing devices 112 a and 112 b identify a relative special position ofthe user's eyes with respect to display apparatus 104. Object facingdevices 110 a and 110 b simultaneously identify an object(s) spacialposition on an opposite side (i.e., from user 102) of display apparatus104.

System 100 enables a generic pattern recognition process with respect tofacial features via a user facing devices 112 a and 112 b (e.g.,recognition of relative positions of anatomical features including,inter alia, eyes, ears, nose, etc.) to triangulate a relative eyeposition in order to infer line of sight information. System 100 maydetermine the angle and distance of a user's eyes/face from itself usinguser facing devices 112 a and 112 b via paths 115 a, 116 a, 115 b, and116 b, respectively. The various spacial positions are used to determinea position of an image presentation on display apparatus 104 relative toviewable objects (e.g., object 108) from a perspective of user 102.Additionally or alternatively, the image presentation may include anillumination of display apparatus 104 (e.g., an image projection, animage reflection, an image hologram, etc).

System 100 includes transparent display apparatus 104 (includingtransparent displays 104 a and 104 b) that includes user facing devices112 a and 112 b and object facing devices camera 110 a and 110 bconnected to a computing system for discerning a user's 102 relative eyeposition and for discerning an object's 108 relative position withrespect to display apparatus 104. Display apparatus 104 may include anytype of display apparatus including, inter alia, windows, an HUD, etc.System 100 allows image selections to be made by a relative position ofa display apparatus, user, and object irrespective of an angle orgeometry of the display apparatus.

System 100 includes multiple fixed user facing devices (i.e., userfacing cameras 112 a and 112 b) enabling a triangulation process fordetermining the user's relative position. Additionally, multiple objectfacing devices (i.e., object facing devices 110 a and 110 b) enable atriangulation process with respect to objects such that an accurate lineof sight (i.e., line of sight 127 a) may be determined. Theaforementioned information may be used to determine where to displayinformation (on display apparatus 104) relative to user 102. Forexample, with respect to transparent glass capable of displaying data,forward and rear facing devices (e.g., user facing devices 112 a and 112b and object facing devices 110 a and 110 b) in combination with acomputing system determine where to display data on the transparentglass such that the data appropriately overlays a scene behind thetransparent display. As an example, a ship's bridge could use theaforementioned information to overlay information on landmarks,deckhands, or detected objects on its windows such that a user wouldhave an accurate representation of where these objects are, irrespectiveof the user's position on the bridge. As a second example, with respectto a windshield capable of dimming in select areas, sets of forward andrear facing devices may determine which portions of a windshield shouldbe dimmed such that bright objects may be attenuated from a user'sperspective, regardless of where the user is positioned relative to thewindshield.

An implementation example enabled by system 100 allows a user 102 tolook through a set of windows (i.e., display apparatus 104 shaped asrounded rectangles) from two different angles (i.e., a first positionillustrated in FIG. 1A and a second position illustrated in FIG. 1B).Object and user facing devices (i.e., user facing devices 112 a and 112b and object facing devices 110 a and 110 b) interpret the locations ofboth user 102 and an object 108 relative to the windows (i.e., via lineof sight 127 a or 127 b). Using the interpretation of the locations, anarrow 108 a may be displayed on an appropriate area of the window suchthat user 102 is able to view arrow 108 a overlain and accuratelypointing to object 108 along line of sight 127 a or 127 b. Additionally,the forward and user facing devices may account for a vertical offset ofboth user 102 and object 108. Additional images related to objects maybe simultaneously displayed in position relative to user 102 andrespective objects.

Additionally, symbols describing relationships between objects may beenabled. Relationships may include, inter alia, a distance between twoobjects, etc. The following implementation example describes a processassociated with symbols describing relationships between objects:

A display system installed on a crane may display information associatedwith a location of a lifted load relative to the ground. The displaysystem retrieves and combines information associated with the locationof the lifted load and a geometry of the ground resulting in a box(being displayed) indicating a location on the ground that the load ispositioned above.

FIG. 2A illustrates a first object facing internal logic view/objectimage 205 of a computing apparatus for determining a line of sightbetween a user and an object for image placement on a transparentdisplay apparatus, in accordance with embodiments of the presentinvention. Internal logic view/object image 205 illustrates a retrievedimage of objects 207 and 208. An image of an object may be created usinginformation from any type of sensor that may convey information toidentify a specific position. For example, in the aforementionedimplementation example, an image of an object may include a measurementof a boom angle and a length of a cable supporting a load. Additionally,note that the determination of the load-ground system as a first object,with measurements of boom angle and cable length comprising the object'skey features may be “hard coded,” (i.e. the display system may bedesigned/configured to process a set of specific measurements withoutdetermination at runtime). Prior to, simultaneously, or subsequent tothe process enabled by internal logic view/object image 205, a relativelocation of a user is determined. The determination of a relativeposition of a user is described in detail with respect to FIGS. 4A-4C,infra.

FIG. 2B illustrates a second object facing internal logic view 205 a ofthe computing apparatus for determining a line of sight between a userand an object for image placement on a transparent display apparatus, inaccordance with embodiments of the present invention. Second internallogic view 205 a enables a process for identifying object 207 for imageplacement. Enhancement marker 210 includes a marker symbolic of aprocess for identifying object 207. Additionally, a relative angle(i.e., represented by line 212) and distance to the object facing deviceis determined. The distance may be determined by additional informationpassed by the object facing device to a processor of the computingapparatus. For example, a radar that determines a distance as well as anangle, a stereoscopic image that is processed to determine a distance ofobject 207. Information relating to object 207 is retrieved for imageplacement on a transparent a display apparatus. Additionally, a symbolor text associated with object 207 may be generated for image placementon the transparent display apparatus.

FIG. 3A illustrates a system 300 for displaying information 314associated with an object 307 on a transparent display apparatus 310, inaccordance with embodiments of the present invention. Information 314may include any type of information associated with object 307including, inter alia, an arrow, text (e.g., sun), an animated image ofobject 307, etc. Information 314 is displayed such that information 314is located relative to a line of sight 312 between eyes of a user 308and object 307. Line of sight 312 may be calculated from data retrievedfrom a user facing device 319 and an object facing device 320 incombination with a location of transparent display apparatus 310.Alternatively, user facing device 319 and object facing device 320 maybe replaced by a wide field of view device 325 configured to be rotatedin a direction 327 and a direction 328 such that the wide field of viewdevice 325 is placed in a user facing device mode and an object facingdevice mode. The user facing device mode and the object facing devicemode allow a line of sight 331 and a line of sight 332 to be calculatedfrom data retrieved from wide field of view device 325 in combinationwith a location of transparent display apparatus 310.

FIG. 3B illustrates a system 400 for displaying multiple information 414and 432 associated with an objects 407 and 422 (respectively) on atransparent display apparatus 410, in accordance with embodiments of thepresent invention. Information 414 and 432 may include any type ofinformation associated with objects 407 and 422 including, inter alia,an arrow, text (e.g., sun, moon, etc), an animated image of an object,etc. Information 414 is displayed such that information 414 is locatedrelative to a line of sight 412 a between eyes of a user 408 and object407. Likewise, information 432 is displayed such that information 432 islocated relative to a line of sight 412 b between eyes of user 408 andobject 422. Line 440 between user 408 and user facing device 419, line441 between object facing device 420 and object 407, and line 442between object facing device or sensor 420 and object 422 each includean input to the process for displaying information 414 and 432. Line ofsight 412 a and line of sight 412 b (or equivalent information) arecalculated using information from both user facing device 419 and objectfacing device or sensor 420.

FIG. 3B illustrates transparent display apparatus 410, user facingdevice or sensor 419, and object facing device 420 mechanically coupledat a known location relative to each other thereby enabling one examplemethod of calculations for placement of information 414 and 432. Userfacing device 419 may determine a distance by analysis of facialfeatures or other means (e.g., sensors) that pass range information ortriangulation with multiple user facing devices or sensors.

FIG. 4A illustrates an internal logic view/user image 455 of thecomputing system described with respect to FIGS. 1A and 1B, inaccordance with embodiments of the present invention. Internal logicview/user image 455 illustrates a retrieved image of a user 458. Image455 may be retrieved using a user facing device.

FIG. 4B illustrates an internal logic view 455 a of the computing systemdescribed with respect to FIGS. 1A and 1B, in accordance withembodiments of the present invention. Internal logic view 455 aillustrates a method for identifying key features 460 of a user's faceor head. The key features are used to determine a position of the user'seyes relative to a user facing device.

FIG. 4C illustrates an internal logic view 455 b of the computing systemdescribed with respect to FIGS. 1A and 1B, in accordance withembodiments of the present invention. Internal logic view 455 billustrates a process for identifying a user face, relative angle, anddistance relative to a user facing device. Internal logic view 455 billustrates logic for determining an origin of the user's line of sight(i.e., in 3D coordinates or a distance measured and location of theorigin of the user's line of sight relative to a field of view), faceangle, relative angle, and/or distance. A face angle is defined hereinas an angle of the user's head relative to the user facing device (e.g.,is the user's head turned). A relative angle is defined herein as adetermination of a location of the user's eyes relative to the userfacing device. A distance is defined herein as an approximate distanceof the user derived from: a measurement of facial features that mayfactor in a face angle; a triangulation process using a plurality ofdevices; and/or a range sensor, etc. Data 464 a includes a symbolicrepresentation of user's 408 relative angle with respect to user facingdevice 419. Data 464 b may include information used to determine anangle, face angle, and distance of the user with respect to the userfacing device.

FIG. 5 illustrates an algorithm detailing a process flow enabled bysystem 100 of FIGS. 1A and 1B, in accordance with embodiments of thepresent invention. Each of the steps in the algorithm of FIG. 5 may beenabled and executed by a computer processor executing computer code. Instep 500, a computing system receives an image of a user from a userfacing device (or sensor). In step 502, program instructions identifykey features of the image. Additionally, program instructions maydetermine a position of the user's eyes with respect to the user facingdevice on based on the key features. The key features may include facialfeatures of the user. The facial features may include eyes of the user.In step 504, program instructions determine and analyze attributes ofthe key features. Determining the attributes may include, inter alia:determining an angle of the user's head with respect to the user facingdevice, determining a distance of the user with respect to the userfacing device, etc. In step 508, program instructions receive an objectimage of objects. In step 509, program instructions identify a firstobject of the objects. In step 512, program instructions identify objectkey features and associated attributes of the first object. In step 514,program instructions analyze the object attributes. In step 518, programinstructions determine a specified position on a transparent display fordisplaying a first image associated with the first object based on theanalysis of steps 504 and 514. The first image may include, inter alia,an actual image of the first object, a graphical representation of thefirst object, a magnified image of a distant object of the objects, textassociated with the first object, etc. In step 520, program instructionsdisplay the first image at the specified position on the transparentdisplay. Additionally, program instructions may display an indicatorreferring to the first image. The first image may include an attenuationof transparency of the transparent display or an enhancement oftransparency of the transparent display.

FIG. 6 illustrates a computer apparatus 90 (e.g., the computing systemdescribed with respect to FIGS. 1A and 1B FIG. 1A) used by system 100 ofFIGS. 1A and 1B for determining a line of sight between a user and anobject for image placement on a transparent display apparatus, inaccordance with embodiments of the present invention. The computersystem 90 includes a processor 91, an input device 92 coupled to theprocessor 91, an output device 93 coupled to the processor 91, andmemory devices 94 and 95 each coupled to the processor 91. The inputdevice 92 may be, inter alia, a keyboard, a mouse, a camera, a sensor, atouchscreen, etc. The output device 93 may be, inter alia, a printer, aplotter, a computer screen, a magnetic tape, a removable hard disk, afloppy disk, etc. The memory devices 94 and 95 may be, inter alia, ahard disk, a floppy disk, a magnetic tape, an optical storage such as acompact disc (CD) or a digital video disc (DVD), a dynamic random accessmemory (DRAM), a read-only memory (ROM), etc. The memory device 95includes a computer code 97. The computer code 97 includes algorithms(e.g., the algorithm of FIG. 5) for determining a line of sight betweena user and an object for image placement on a transparent displayapparatus. The processor 91 executes the computer code 97. The memorydevice 94 includes input data 96. The input data 96 includes inputrequired by the computer code 97. The output device 93 displays outputfrom the computer code 97. Either or both memory devices 94 and 95 (orone or more additional memory devices not shown in FIG. 6) may includethe algorithm of FIG. 5 and may be used as a computer usable medium (ora computer readable medium or a program storage device) having acomputer readable program code embodied therein and/or having other datastored therein, wherein the computer readable program code includes thecomputer code 97. Generally, a computer program product (or,alternatively, an article of manufacture) of the computer system 90 mayinclude the computer usable medium (or the program storage device).

Still yet, any of the components of the present invention could becreated, integrated, hosted, maintained, deployed, managed, serviced,etc. by a service supplier who offers to determine a line of sightbetween a user and an object relative to a transparent displayapparatus. Thus the present invention discloses a process for deploying,creating, integrating, hosting, maintaining, and/or integratingcomputing infrastructure, including integrating computer-readable codeinto the computer system 90, wherein the code in combination with thecomputer system 90 is capable of performing a method for determining aline of sight between a user and an object for image placement on atransparent display apparatus. In another embodiment, the inventionprovides a business method that performs the process steps of theinvention on a subscription, advertising, and/or fee basis. That is, aservice supplier, such as a Solution Integrator, could offer to fordetermine a line of sight between a user and an object for imageplacement on transparent display apparatus. In this case, the servicesupplier can create, maintain, support, etc. a computer infrastructurethat performs the process steps of the invention for one or morecustomers. In return, the service supplier can receive payment from thecustomer(s) under a subscription and/or fee agreement and/or the servicesupplier can receive payment from the sale of advertising content to oneor more third parties.

While FIG. 6 shows the computer system 90 as a particular configurationof hardware and software, any configuration of hardware and software, aswould be known to a person of ordinary skill in the art, may be utilizedfor the purposes stated supra in conjunction with the particularcomputer system 90 of FIG. 6. For example, the memory devices 94 and 95may be portions of a single memory device rather than separate memorydevices.

While embodiments of the present invention have been described hereinfor purposes of illustration, many modifications and changes will becomeapparent to those skilled in the art. Accordingly, the appended claimsare intended to encompass all such modifications and changes as fallwithin the true spirit and scope of this invention.

What is claimed is:
 1. A method comprising: receiving, by a computerprocessor of a computing apparatus from a user facing device, a userimage; identifying, by said computer processor, user image key featuresof said user image; determining, by said computer processor based onsaid user image key features, user image attributes of said user imagekey features; first analyzing, by said computer processor, said userimage attributes; receiving, by said computer processor from an objectfacing device, an object image of objects; identifying, by said computerprocessor, a first object of said objects; identifying, by said computerprocessor, object key features of said first object; determining, bysaid computer processor based on said object key features, objectattributes of said object key features; second analyzing, by saidcomputer processor, said object attributes; determining, by saidcomputer processor based on said key features, a first angular positionof eyes of said user with respect to said user facing device;determining, by said computer processor based on said key features, asecond angular position of a head of said user with respect to said userfacing device; determining, by said computer processor based on resultsof said first analyzing, said second analyzing, said first angularposition, and said second angular position, a specified position on atransparent display for displaying a first image associated with saidfirst object; displaying, by said computer processor at said specifiedposition on said transparent display, said first image; displaying, bysaid computer processor on said transparent display, a second image of asecond object of said objects; determining, by said computer processor,an actual distance between said first object and said second object; anddisplaying, by said computer processor on said transparent display, asymbol indicating said actual distance.
 2. The method of claim 1,wherein said first image comprises an actual image of said first object.3. The method of claim 1, wherein said first image comprises a graphicalrepresentation related to said first object.
 4. The method of claim 1,wherein said objects comprise a composition of multiple subsets of saidobjects.
 5. The method of claim 1, wherein said first image comprisestext associated with said first object.
 6. The method of claim 1,wherein said key features comprise facial features of said user.
 7. Themethod of claim 1, wherein said determining said user image attributescomprises: determining a distance of said user with respect to said userfacing device.
 8. The method of claim 1, wherein specified positioncomprises a point within a field of view of said user, and wherein saidpoint is located relative to a line formed between an origin of a lineof sight of said user and an actual location of said first object. 9.The method of claim 8, further comprising: displaying, by said computerprocessor on said transparent display at a position with respect to saidpoint, said first image.
 10. The method of claim 8, further comprising:displaying, by said computer processor on said transparent display at aposition with respect to said point, an indicator referring to saidfirst image, wherein said first image is located at a position outsideof the display with respect to a field of view of said user.
 11. Themethod of claim 1, wherein said first image comprises an attenuation oftransparency of said transparent display.
 12. The method of claim 1,wherein said first image comprises an enhancement of transparency ofsaid transparent display.
 13. The method of claim 1, wherein said userfacing device comprises a plurality of user facing devices, and whereinsaid object facing device comprises a plurality of object facingdevices.
 14. The method of claim 1, wherein said user facing device andsaid object facing device comprise a wide field of view deviceconfigured to be rotated such that said wide field of view device isplaced in a user facing device mode and an object facing device mode.15. The method of claim 1, wherein said identifying said object keyfeatures of said first object is executed using a set of instructionsselected from the group consisting of soft coded instructions and hardcoded instructions.
 16. The method of claim 1, wherein said first imagecomprises an illumination of said transparent display.
 17. The method ofclaim 1, further comprising: providing a process for supporting computerinfrastructure, said process comprising providing at least one supportservice for at least one of creating, integrating, hosting, maintaining,and deploying computer-readable code in the computing apparatus, whereinthe code in combination with the computing apparatus is configured toperform the method of claim
 1. 18. The method of claim 1, wherein saidtransparent display is comprised by a window of a vehicle.
 19. Themethod of claim 1, further comprising: determining, by said computerprocessor, portions of said transparent display to be dimmed such thatbright objects may be attenuated from a perspective of said user,regardless of where the user is positioned relative to said transparentdisplay.
 20. The method of claim 1, wherein said first image isdisplayed as an arrow, text, and an animated image.
 21. A computerprogram product for field of view region determination on a transparentdisplay, the computer program product comprising: one or morecomputer-readable, hardware storage devices; program instructions,stored on at least one of the one or more storage devices, to initiatereceiving, from a user facing device, a user image; programinstructions, stored on at least one of the one or more storage devices,to identify user image key features of said user image; programinstructions, stored on at least one of the one or more storage devices,to determine based on said user image key features, user imageattributes of said user image key features; program instructions, storedon at least one of the one or more storage devices, to perform a firstanalyses of said user image attributes; program instructions, stored onat least one of the one or more storage devices, to initiate receivingfrom an object facing device, an object image of objects; programinstructions, stored on at least one of the one or more storage devices,to identify a first object of said objects; program instructions, storedon at least one of the one or more storage devices, to identify objectkey features of said first object; program instructions, stored on atleast one of the one or more storage devices, to determine, based onsaid object key features, object attributes of said object key features;program instructions, stored on at least one of the one or more storagedevices, to perform a second analyses of said object attributes; programinstructions, stored on at least one of the one or more storage devices,to determine, based on said key features, a first angular position ofeyes of said user with respect to said user facing device; programinstructions, stored on at least one of the one or more storage devices,to determine, based on said key features, a second angular position of ahead of said user with respect to said user facing device; programinstructions, stored on at least one of the one or more storage devices,to determine, based on results of said first analyses, said secondanalyses, said first angular position, and said second angular position,a specified position on a transparent display for displaying a firstimage associated with said first object; program instructions, stored onat least one of the one or more storage devices, to initiate displaying,at said specified position on said transparent display, said firstimage; program instructions, stored on at least one of the one or morestorage devices, to display on said transparent display, a second imageof a second object of said objects; program instructions, stored on atleast one of the one or more storage devices, to determine an actualdistance between said first object and said second object; and programinstructions, stored on at least one of the one or more storage devices,to display on said transparent display, a symbol indicating said actualdistance.
 22. The computer program product of claim 21, wherein saidfirst image comprises an actual image of said first object.
 23. Thecomputer program product of claim 21, wherein said first image comprisesa graphical representation related to said first object.
 24. Thecomputer program product of claim 21, wherein said objects comprise acomposition of multiple subsets of said objects.
 25. A computingapparatus comprising a computer processor coupled to a computer-readablememory unit, said memory unit comprising instructions that when executedby the computer processor implements a method comprising: receiving, bysaid computer processor from a user facing device, a user image;identifying, by said computer processor, user image key features of saiduser image; determining, by said computer processor based on said userimage key features, user image attributes of said user image keyfeatures; first analyzing, by said computer processor, said user imageattributes; receiving, by said computer processor from an object facingdevice, an object image of objects; identifying, by said computerprocessor, a first object of said objects; identifying, by said computerprocessor, object key features of said first object; determining, bysaid computer processor based on said object key features, objectattributes of said object key features; second analyzing, by saidcomputer processor, said object attributes; determining, by saidcomputer processor based on said key features, a first angular positionof eyes of said user with respect to said user facing device;determining, by said computer processor based on said key features, asecond angular position of a head of said user with respect to said userfacing device; determining, by said computer processor based on resultsof said first analyzing, said second analyzing, said first angularposition, and said second angular position, a specified position on atransparent display for displaying a first image associated with saidfirst object; displaying, by said computer processor at said specifiedposition on said transparent display, said first image; displaying, bysaid computer processor on said transparent display, a second image of asecond object of said objects; determining, by said computer processor,an actual distance between said first object and said second object; anddisplaying, by said computer processor on said transparent display, asymbol indicating said actual distance.